package cn.iocoder.yudao.module.scrm.service.marketing.operation;

import cn.iocoder.yudao.module.scrm.controller.admin.marketing.vo.operation.*;
import cn.iocoder.yudao.module.system.api.social.dto.SocialWxPhoneNumberInfoRespDTO;

/**
 * 营销操作 Service 接口
 *
 * @author LiZhiMin
 * @Date 2024/8/10 10:28
 */
public interface MarketingOperationService {

    /**
     * 员工|访客-转发营销内容-进行记录转发次数和数据
     * @param vo 入参
     * @return 返回
     */
    TransmitRespVO transmit(TransmitReqVO vo);

    /**
     * 员工|访客-访问营销内容进行记录浏览数据
     * @param vo 入参
     * @return 返回
     */
    VisitorRespVO visitor(Integer tenantId,VisitorReqVO vo);

    /**
     * 发送访问雷达信息
     * @param vo 入参
     * @return 返回
     */
    Boolean sendMessage(Integer tenantId ,SendMessageVo vo);

    /**
     * 用户授权后获取微信用户的信息根据code
     * @param tenantId 租户
     * @param vo 入参
     * @return 用户西悉尼
     */
    WxInfoRespVo getWeChatInfoByCode(Integer tenantId, WxAuthorizerReqVo vo);

    /**
     * getWxPhone
     * @param userType 用户类型
     * @param phoneCode 前端获取的手机code
     * @return 返回
     */
    SocialWxPhoneNumberInfoRespDTO getWxPhone(Integer userType, String phoneCode);
}
